<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:param name="currentUrl" />
	
<xsl:template match="/">
	<xsl:apply-templates select="/website/navigation" />
</xsl:template>

	<xsl:template match="/website/navigation">
		<ul>
		<xsl:element name="li">
			<xsl:element name="h2">
				<xsl:element name="a">
					<xsl:attribute name="class">
						root<xsl:if test="string($currentUrl)=string(@navigateURL)"> selected</xsl:if>
					</xsl:attribute>
				<xsl:attribute name="href">
					<xsl:value-of select="@navigateURL"/>
				</xsl:attribute>
				<xsl:value-of select="text()"/>
			</xsl:element>
			<xsl:if test="./navigation/node()">
				<xsl:element name="ul">
					<xsl:apply-templates select="./navigation">
					</xsl:apply-templates>
				</xsl:element>
			</xsl:if>
			</xsl:element>
		</xsl:element>
		</ul>
	</xsl:template>

	<xsl:template match="navigation" name="menuBranch">
		<xsl:element name="li">
			<xsl:element name="a">
				<xsl:if test="string($currentUrl)=string(@navigateURL)">
					<xsl:attribute name="class">selected</xsl:attribute>
				</xsl:if>
				<xsl:attribute name="href"><xsl:value-of select="@navigateURL"/></xsl:attribute>
				<xsl:value-of select="text()"/>
			</xsl:element>
			<xsl:if test="./navigation/node()">
				<xsl:element name="ul">
					<xsl:apply-templates select="./navigation">
					</xsl:apply-templates>
				</xsl:element>
			</xsl:if>
		</xsl:element>
	</xsl:template>

</xsl:stylesheet> 

